iT邦幫忙

2022 iThome 鐵人賽

DAY 27
0
自我挑戰組

商科生初探網頁全端開發系列 第 27

Day27-JavaScript Undefined 、Null、Comparison Operators

  • 分享至 

  • xImage
  •  

不知不覺之下鐵人賽已進入尾聲,今天就以JavaScript中最後兩個原始型別Undefined 、Null及比較運算子Comparison Operators做結

1.Undefined
根據英文解釋:Undefined means a variable has been declared, but the value of that variable has not yet been defined.

  • 中文翻譯大概為未定一指一個變數已經被宣告,但是尚未賦予值。
  • 在JavaScript中未賦予值的變數其預設值為 undefined。
  • 如果使用typeof檢視undefined會得出其類別即為undefined。

2.Null
根據英文解釋:Null means an empty or non-existent value. Null is assigned, and explicitly means nothing.

  • 中文翻譯大概為變數有被宣告且有值,而其值是「空值」的概念。
  • 如果使用typeof檢視null會得出其類別即為object。

3.Comparison Operators
比較運算子有這幾類:
(1) >:大於
(2)>=:大於或等於
(3) <:小於
(4)<=:小於或等於
(5)==:等於
(6)===:嚴格等於
(7)!=:不等於
(8)!==:嚴格不等於

這邊特別說明等於及嚴格等於的差別,請看下圖:
https://ithelp.ithome.com.tw/upload/images/20220927/20151031X6qj5t2Zub.png
1 == '1'數字1和字串1為何相等? > 在 == 下,會將兩邊值轉換成同一型別後比較因此回傳結果為True。

1 === '1'在嚴格等於的情形下,兩邊同時比較值以及型別,發現左邊為number,右邊為String>回傳False。


補充:
雖然不常見,字串也能比較大小,如:
https://ithelp.ithome.com.tw/upload/images/20220927/20151031gnbB2dkqi8.png
為何字串A小於字串a為True?
原因在字串A及a其實有內含數值,請見unicode表
(第2頁中可以看到字串A內含41的值,a則含61)


參考資料(1)
參考資料(2)


上一篇
Day26-JavaScript Math Object
下一篇
Day28-自學資源分享
系列文
商科生初探網頁全端開發30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言